The present invention relates generally to virtual machines and more particularly to software based collection of performance metrics and allocation adjustment of virtual resources.
In various virtual system environments, including clustered and cloud system environments, virtual machines can be deployed and executed based on virtual resource definitions. Virtual resource definitions for virtual machines may include specific requirements regarding the number and types of resources, where types of resources include capabilities of each individual resource or group of resources. In addition to processor and memory resources, virtual machines typically require other resources such as, I/O adapters. These adapters are often virtual adapters, hosted by physical adapters that share the limited capacities and capabilities provided by the physical adapters. In the event virtual machines are activated and deactivated with high frequency, the required adapter resources are assigned, released, and reassigned.